home *** CD-ROM | disk | FTP | other *** search
/ Languguage OS 2 / Languguage OS II Version 10-94 (Knowledge Media)(1994).ISO / gnu / bash_114.zip / bash-1.14.2 / flags.h < prev    next >
C/C++ Source or Header  |  1993-12-19  |  2KB  |  66 lines

  1. /* flags.h -- a list of all the flags that the shell knows about.  You add
  2.    a flag to this program by adding the name here, and in flags.c. */
  3.  
  4. /* Copyright (C) 1993 Free Software Foundation, Inc.
  5.  
  6.    This file is part of GNU Bash, the Bourne Again SHell.
  7.  
  8.    Bash is free software; you can redistribute it and/or modify it under
  9.    the terms of the GNU General Public License as published by the Free
  10.    Software Foundation; either version 2, or (at your option) any later
  11.    version.
  12.  
  13.    Bash is distributed in the hope that it will be useful, but WITHOUT ANY
  14.    WARRANTY; without even the implied warranty of MERCHANTABILITY or
  15.    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  16.    for more details.
  17.  
  18.    You should have received a copy of the GNU General Public License along
  19.    with Bash; see the file COPYING.  If not, write to the Free Software
  20.    Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
  21.  
  22. #if !defined (_FLAGS_H)
  23. #define _FLAGS_H
  24.  
  25. #include "stdc.h"
  26.  
  27. /* Welcome to the world of Un*x, where everything is slightly backwards. */
  28. #define FLAG_ON '-'
  29. #define FLAG_OFF '+'
  30.  
  31. #define FLAG_ERROR -1
  32. #define FLAG_UNKNOWN (int *)0
  33.  
  34. /* The thing that we build the array of flags out of. */
  35. struct flags_alist {
  36.   char name;
  37.   int *value;
  38. };
  39.  
  40. extern struct flags_alist shell_flags[];
  41.  
  42. extern int
  43.   mark_modified_vars, exit_immediately_on_error, disallow_filename_globbing,
  44.   locate_commands_in_functions, place_keywords_in_env, read_but_dont_execute,
  45.   just_one_command, unbound_vars_is_error, echo_input_at_read,
  46.   echo_command_at_execute, lexical_scoping, no_invisible_vars, noclobber,
  47.   hashing_disabled, forced_interactive, privileged_mode,
  48.   asynchronous_notification, interactive_comments, no_symbolic_links;
  49.  
  50. #if defined (HISTORY)
  51. extern int history_expansion;
  52. #endif /* HISTORY */
  53.  
  54. #if defined (RESTRICTED_SHELL)
  55. extern int restricted;
  56. #endif /* RESTRICTED_SHELL */
  57.  
  58. extern int *find_flag __P((int));
  59. extern int change_flag __P((int, int));
  60. extern char *which_set_flags __P((void));
  61.  
  62. /* A macro for efficiency. */
  63. #define change_flag_char(flag, on_or_off)  change_flag (flag, on_or_off)
  64.  
  65. #endif /* _FLAGS_H */
  66.